import {request} from 'umi';
const PROJECT_NAME = process.env.PROJECT_NAME;


interface IAdd {
  id: string,

  /** 父菜单ID，一级菜单为0 */
  parentId: string,

  /** 菜单名称 */
  name: string,

  /** 菜单URL */
  url: string,

  /** 授权 如：user:list */
  permission: string,

  /** 类型   0：目录   1：菜单   2：按钮 */
  type: string,

  /** 菜单图标 */
  icon: string,

  /** 排序 */
  sort: string,

  /** 状态   0：开启   1：禁用 */
  state: string,

  /** 创建人 */
  createBy: string,

  /** 更新人 */
  updateBy: string,

}

interface IDelete {
  /** 菜单管理id */
  id: string,
}


/**
 * 菜单管理列表
 * @param param
 */
export async function findMenuTree(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/findMenuTree`, {method: 'POST', data});
}

/**
 * 角色菜单列表
 * @param param
 */
export async function findRoleMenuTree(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/findRoleMenuTree`, {method: 'POST', data});
}

/**
 * 更新角色菜单
 * @param param
 */
export async function updateRoleMenu(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/updateRoleMenu`, {method: 'POST', data});
}

export async function saveObject(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/saveObject`, {method: 'POST', data});
}


export async function updateObject(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/updateObject`, {method: 'POST', data});
}

/**
 * 删除菜单管理
 * @param param
 */
export async function fakeDelete(data: any) {
  return request(`/${PROJECT_NAME}/sys/menu/fakeDelete`, {method: 'POST', data});
}
